
           Sirius Help text -- version 0.50
           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

==> ?


  This  "Fido-compatible message base manager"  should
     eventually  cover  almost  all of  your  MESSAGE-
     (not FILE-)specific processing needs.

  If there is  ANY Fido-compatible message  capability
     which  you  desire  but  don't find here, contact
     Micro Solutions NOW.
                                         --- Bob Klahn


{pause}

Message selection:
     A : Area change

     B : get most recently Tagged message, regardless of area
         (see Tag command)

     H : get Highest-numbered message
     L : get Lowest-numbered message

     N : get Next message IN CURRENT GROUP
     P : get Previous message IN CURRENT GROUP

     Z : get message at Zenith, i.e., highest-numbered message yet seen

     + : get next LINKED message
     - : get previous LINKED message

     # : get a specific message number (NOT the "#" character itself)

{pause}

Single message operations:
     C : Copy message, to disk file or printer
     D : Doctor current message
     K : Kill message
     M : Move message somewhere else
     S : Show (current) message in complete detail (despite View settings)
     T : Tag message (assign To A Group, or for recall by Back command)

     E : Enter new message
     F : Forward message (not yet implemented)
     R : Reply to message

{pause}

Miscellaneous options:
     G : work with Groups of messages
     I : pause for keyboard Input (see @Keyin string function)
     O : Output text to screen
     W : Wait one or more seconds
     Y : the real You, with aliases

     ! : script input/output; if-otherwise/while
     J : Jump to DOS and optionally execute a program or batch file
     Q : Quit to DOS
     V : View (what you want to see on your screen)
     X : novice/average/eXpert Sirius user
     ? : this display

==> Area (?

Area selection options:
     K : "also Known as", i.e., the area's EchoMail identifier
     N : Netmail area
     # : a specific area number

{pause}

==> Area (Known as (?

So you haven't quite got a handle on these handles, eh?  It's like this:

These optional  identifiers are  usually associated  with EchoMail.  When
building  its  area  table  file  (SIRIUS.ART), Sirius will include these
identifiers  if  EchoMail-formatted  file  AREAS.BBS  is available in the
Sirius home directory at that time.

You need not key the  entire identifier, as partial matches  are allowed;
the match is on  the first occurrence in  the area table, ordered  low to
high.  Thus if  area #1 is  "GENERAL" and area  #2 is "GENEALOGY",  a "G"
will select area #1, as will "GE", "GEN", and "GENE"; "GENEA" and  beyond
will select area #2.

==> Copy (?

Copy this message elsewhere, with or without all the messages linked to it:
perhaps to a different area, probably renumbered.

Message links are dropped on all single-message copies.

{pause}

WHAT to copy:
     C : prepare to copy current message Chain (toggle; single = default)

WHERE and HOW to copy it there:
     A : prepare to copy to a different message Area (default = current area)
     F : to a flat ASCII File  (immediate)
     P : to a Printer on LPT1: (immediate)

     D : prepare to copy Down (just above next-lower message)
     H : prepare to copy to end of area (High)
     L : prepare to copy to beginning of area (as Low as possible)
     U : prepare to copy Up (just below next-higher message)
     W : prepare to copy into When-entered order
         (When implemented, THIS will be the default.)
     # : prepare to copy using a specific message number

     S : message body will be "Stamped" with source and date/time of copy

{pause}

Actually performing THE COPY, and possibly "going along for the ride":
     G : "Give" message(s) to destination but stay where you are
     T : "Take" (go along with) message(s) to destination

     ? : this display

==> Doctor (?
       ____/
      /
     B : Body of msg
     D : Date/time
     F : who From
     L : Links ("reply to", "see also")
     N : Netmail
     P : "(Private)" status
     R : "(Recv''d)" status
     S : Subject
     T : who To
     ? : this display

==> Doctor (Body (?
       __________/
      /
{file SIRBODY.HLP}

==> Doctor (Links (?
       ___________/
      /
     U : Unlink               \  Only the current message is doctored now;
     - : Alter backward link   >  message linked-to may also
     + : Alter forward link   /   require doctoring
     ? : this display

==> Doctor (Netmail (?
       _____________/
      /
     A : "(file Attchd)" status
     F : net/node From
     H : "(Hold)" status (SEAdog only)
     I : "(In transit)" status
     K : "(Kill/sent)" status
     L : "(Local)" status
     O : "(Orphan)" status
     R : Request from destination (SEAdog only)
     S : "(Sent)" status
     T : net/node To
     X : "(eXpress)" status (SEAdog only)
     ? : this display

==> Doctor (Netmail (Requests (?
       _______________________/
      /
     A : "(Audit req)" status  \
     F : "(File req)" status    \
     R : "(Receipt req)" status  > SEAdog only
     U : "(Update req)" status  /
     ? : this display          /

==> Enter (?

Pretty basic now:  single-pass word-wrapped message entry;
see also "You" command.

==> Doctor (Body (Append (?
==> Enter (Body (?
==> Reply (Body (?

{file SIRCTRL.HLP}

==> Enter (Bodywork (?
==> Reply (Bodywork (?
       _____________/
      /
{file SIRBODY.HLP}

==> Enter (Handling (?
==> Reply (Handling (?
      ______________/
     /
    H : "(Hold)" status (SEAdog only)
    K : "(Kill/sent)" status
    X : "(eXpress)" status (SEAdog only)
    ? : this display

==> Enter (Requests (?
==> Reply (Requests (?
      _____________/
     /
    A : "(Audit req)" status  \
    F : "(File req)" status    \
    R : "(Receipt req)" status  > SEAdog only
    U : "(Update req)" status  /
    ? : this display          /

==> Forward (?

Change a message's "To:" field and optionally prefix an intro.

==> Group (?
       ___/
      /
     D : Define a group, also making it the active group
     U : Use a group (make it the active group)

     C : Copy active group       \
     K : Kill active group        \  Not yet implemented;
     M : Move active group        /  use While loops for now.
     R : Renumber active group   /

     H : display message Headers, one screen line per message, in active group
     L : display List of message numbers in active group

     ? : this display

==> Group (Define (?

This powerful facility allows you to define

                         LOGICAL MESSAGE GROUPS

by means of general expressions, just as with Sirius WHILE loops
and IF tests.  (See help for main-menu "!" command.)

A few examples:

    @Body CO 'AREA:TECH' OR @Body CO 'AREA: TECH'
    @DaysOld GT 30
    @InTransit AND @DaysHere GT 4
    @Msg CO 'Telebit' OR @Msg CO 'blazer'
    @Msg NC 'FLAME'
    @NoBody AND @FileAttach AND @Subject CO 'NODEDIFF'
    @Private AND @Received
    'Hello, Bob!' IN @Subject
    150 EQ @ToNet AND 0 EQ @ToNode
    @Xpress AND NOT @Sent

{pause}

Groups are identified by a single letter of the alphabet, A through Z.
At startup, group A is active.

Any group not explicitiy defined (by this Group Define command!) is
assumed to contain all messages in the current message area.

The main-menu "Next" and "Prev" commands automatically skip over messages
which are not members of the current group.

{pause}
{file SIREXPR.HLP}

==> Jump (?

Jump to DOS (and come back using the DOS "EXIT" command).  You'll need to
borrow some memory for this one (especially considering how Sirius eats it
up managing messages)!  By jumping to a DOS batch file (whose last command
is EXIT) under control of a Sirius batch file, and coming back here with
that Sirius batch file STILL IN CONTROL ... all sorts of wonderful things
become possible!

==> Kill (?

Kill (erase, destroy, wipe out, annihilate) this message (are you SURE??)

==> Move (?

Move this message elsewhere, with or without all the messages linked to it:
perhaps to a different area, probably renumbered.

Message links (- and +) are retained and updated if possible, i.e.,
unless a single message is being moved to a different message area.

{pause}

WHAT to move:
     C : prepare to move current message Chain
         (toggle; default = single message only)

WHERE and HOW to move it there:
     A : prepare to move to a different message Area (default = current area)
     F : to a flat ASCII File  (immediate)
     P : to a Printer on LPT1: (immediate)

     D : prepare to move Down (just above next-lower message)
     H : prepare to move (renumber) to end of area (High)
     L : prepare to move (renumber) to beginning of area (as Low as possible)
     U : prepare to move Up (just below next-higher message)
     W : prepare to move into When-entered order
         (When implemented, THIS will be the default.)
     # : prepare to change to a specific message number

     S : message body will be "Stamped" with source and date/time of move

{pause}

Actually performing THE MOVE, and possibly "going along for the ride":
     G : "Give" message(s) to destination but stay where you are
     T : "Take" (go along with) message(s) to destination

     ? : this display

==> Out (?

This command allows you to output explanatory text to the screen, and is
primarily intended to be used in tutorial scripts.

==> Quit (?
       __/
      /
     B : quit to Bbs, i.e., to Fido/Opus/SEAdog home directory
     H : quit "Here", i.e., to current directory
     I : If there is an input error, what should happen?
     S : quit to Sirius program directory
     ? : this display

==> Reply (?

Almost the same as ENTER, except for linking;
see also "You" command.

==> Reply (Bodywork (?

The "Doctor Body" command set.  I can't show it to you right here <sob!>,
because Bob Klahn hasn't taught me how to handle cross-references yet!
Perhaps you should just hit the ENTER key now to save this message as is.
Then use the "High" command followed by "Doctor Body" and ask for help
again; "HDB?" for short.  Such is life in the big city.

==> Reply (Prefix (?

Press the ENTER  key now if  you do NOT  want the body  of the message to
which you are replying to be included in your response; you will then  be
prompted for line #1  of your reply, just  as if this "Original  prefix?"
question had never been asked.

If you  DO want  to quote  all or  part of  the message  to which you are
responding, then key in the  character(s) which you would like  to PREFIX
to each quoted line.

When Sirius next asks  you if you want  to "prefix author's lines  only",
answer "y" or "Y" IF you want the prefix your prefix attached ONLY TO the
replied-to message AUTHOR'S LINES.

The recommended choice for such a prefix is something clearly identifying
the author of the original message, such as "BK>" for yours truly.   Note
that any "BK>" already present  in the replied-to message becomes  "BK>>"
in the reply itself.  I encourage you to experiment!

{pause}

If "View Until" is active AND  the message being replied to has  NOT just
been viewed in detail (i.e.,  using the "Show" command), then  only those
lines  preceding  the  first  occurrence  of  the "View Until" string are
included.  The general idea is to support "WYSIWYG": What You See Is What
You Get.

:-) Be creative in choosing your reply prefixes.  I'll be on the lookout
:-) for YOUR "designer quotes", as Chuck Lawson calls them.

==> Tag (?

TAG a message: right now this  just remembers a single message, for  the
"Back" command to return to.

Later on you will be able, using this command, to assign a message
To A Group ("TAG") for subsequent processing.  You'll  tend to use this
to do things you can't seem to do any other way.

Tagging an already tagged message causes the "zenith" (highest-numbered
message read) to be reset to the current message number.

==> User (?

User base operations.  Yes, folks, USER.BBS maintenance is going to be
part of Sirius.  Consider this one embryonic at best.  But expect to be
able to do things like automatically generating messages to people who
don't fill out your questionnaire to your satisfaction.  THAT should
get your mind buzzing!

==> View (?
       __/
      /
     C : Continuously (i.e., not by screenfuls)
     S : By Screenful (twenty-four-lines-at-a-time)

     F : message Flags (yes, no, or toggle)
     U : Until occurrence of string in message body; case-sensitive.
         E.g.,use this to avoid looking at Echomail SEEN-BY's.

     M : Memory management.  Watch your memory slowly disappear.
         I've forgotten everything else I was going to say ...
     X : level of eXpertise (low, medium, high) in using Sirius

     ? : this display

==> Wait (?
       __/
      /
     A : pause until Any key is pressed
     # : pause for a specific number of seconds (or until ESC key is pressed)

==> You (?

The real YOU!  If you don't tell Sirius who You are (is?), then SIRIUS won't
mark messages as "(Recv'd)" that You read (reads?)!  And without You, Sirius
will prompt for the "From:" field during message entry, reply, or forwarding.
You can also have aliases, so that, for example, both  messages  addressed to
"Bob Klahn"  and messages  addressed to "Sysop"  will be marked as "Recv'd)".
The flip side is that You can avoid "receiving" messages until You have (has)
acted on them, or at least gotten to first base.  Who's on first?  What?  No!

==> ! (?

THIS FACILITY ALONE IS ... why YOU will want to GET Sirius.
~~~~ ~~~~~~~~ ~~~~~ ~~     because ...
   ... it allows you to AUTOMATE MUCH MORE of your total critter care:
       ANYTHING you can key-enter into Sirius, you can also
          (1) "play" from a Sirius command file, A-N-D
          (2) have Sirius record to such a command file for later use,
              either as a session record or for subseqent playback.

     I : If condition is true
     O : Otherwise:  previous "if" condition is false
     W : While condition is true
     E : End most recent If, For, Until, or While

     D : Set inter-command Delay, for use with command file Playback
     L : Log text to file

     P : Play back Sirius commands from a (previously recorded/edited) file
     R : Record (or stop recording) Sirius commands
{pause}
{file SIREXPR.HLP}

     ? : this display

Ah yass, Fido, Opus, and SEAdog can almost run themselves now ...

==> ! (Delay (?

Use this to slow down input command file execution.  Lotsa reasons
you might want to do this, whether you're around to watch or not.
HELLOBOB.SIR uses this.  Think about it.

     K : Keyboard delay: until next key is pressed
     T : Timed delay, in seconds

==> ! (Log (?

This command allows you to append arbitray text to the disk file of your
choice.  If you name a disk file which does not exist, it is created.

Examples: (1) Write a line of dashes to a file to which you are also
              copying messages, to serve as a "divider".
          (2) Write a line to a file, under script control, only if certain
              conditions are met.

Note that file logging operations can also be accomplished via

   Jump ('Echo text-to-be-logged >> LOG.TXT'),

or by using echo commands in DOS batch files.  In particular, entire
Sirius scripts can be generated and immediately invoked in this manner.

